//Родительский "КЛАСС"
function element(){
	this.name='element_def';
}
	element.prototype={
		some_prop:'test',
		init:function(name){
			this.name=name;
		},
		press:function(){
		  alert(' press '+this.name);
		}
	}

function button(name){
  this.init(name);
}
button.prototype={
  release:function(){
    alert(' release '+this.name);
	}
};

inherit(button, element);

var b=new button('button 1');
var b1=new button('button 2');
b.press();
b1.release();


/**************************************************************
 *  Ф-я наследования
 *  Взята из статьи на javascript.ru
 *  http://javascript.ru/tutorial/object/inheritance
 *************************************************************/
function extend(Child, Parent) {
	var F = function() { }
	F.prototype = Parent.prototype
	Child.prototype = new F()
	Child.prototype.constructor = Child
	Child.superclass = Parent.prototype
}

/**************************************************************
 *  Ф-я наследования еще одна
 *  Взята из статьи на Хабре
 *  http://habrahabr.ru/post/131714/
 *************************************************************/
function inherit(Child, Parent)
{
    var F = function () { };
    F.prototype = Parent.prototype;
    var f = new F();

    for (var prop in Child.prototype) f[prop] = Child.prototype[prop];
    Child.prototype = f;
    Child.prototype.super = Parent.prototype;
}